package com.ly.heart.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ly.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ly.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 仓库库存对象 erp_inventory_info
 *
 * @author wutao
 * @date 2024-06-02
 */
@TableName("erp_inventory_info")
@ApiModel(value = "erp_inventory_info对象", description = "仓库库存")
@Data
public class InventoryEntity extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(type = IdType.INPUT)
    private String id;

    /**
     * 项目id
     */
    @ApiModelProperty("项目id")
    @TableField("project_id")
    @Excel(name = "项目id")
    private String projectId;


    /**
     * 项目id
     */
    @ApiModelProperty("订单id")
    @TableField("order_id")
    @Excel(name = "订单id")
    private String orderId;

    /**
     * 仓库id
     */
    @ApiModelProperty("仓库id")
    @TableField("warehouse_id")
    @Excel(name = "仓库id")
    private String warehouseId;

    /**
     * 仓库区域id
     */
    @ApiModelProperty("仓库区域id")
    @TableField("warehouse_region_id")
    @Excel(name = "仓库区域id")
    private String warehouseRegionId;


    @ApiModelProperty("供应类型（1:甲供2:自购）")
    @TableField("supply_type")
    private String supplyType;

    /**
     * 物料id
     */
    @ApiModelProperty("物料id")
    @TableField("material_id")
    @Excel(name = "物料id")
    private String materialId;

    /**
     * 库存总数
     */
    @ApiModelProperty("库存总数")
    @TableField("inventory_number")
    @Excel(name = "库存总数")
    private String inventoryNumber;

    /**
     * 占用量
     */
    @ApiModelProperty("占用量")
    @TableField("useage_number")
    @Excel(name = "占用量")
    private String useageNumber;

    /**
     * 可用量
     */
    @ApiModelProperty("可用量")
    @TableField("residue_number")
    @Excel(name = "可用量")
    private String residueNumber;

    /**
     * 库存金额
     */
    @ApiModelProperty("库存金额")
    @TableField("inventory_money")
    @Excel(name = "库存金额")
    private String inventoryMoney;

    /**
     * 删除标识
     */
    private String delFlag;

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }

    public String getProjectId() {
        return projectId;
    }

    public void setWarehouseId(String warehouseId) {
        this.warehouseId = warehouseId;
    }

    public String getWarehouseId() {
        return warehouseId;
    }

    public void setWarehouseRegionId(String warehouseRegionId) {
        this.warehouseRegionId = warehouseRegionId;
    }

    public String getWarehouseRegionId() {
        return warehouseRegionId;
    }

    public void setMaterialId(String materialId) {
        this.materialId = materialId;
    }

    public String getMaterialId() {
        return materialId;
    }

    public void setInventoryNumber(String inventoryNumber) {
        this.inventoryNumber = inventoryNumber;
    }

    public String getInventoryNumber() {
        return inventoryNumber;
    }

    public void setUseageNumber(String useageNumber) {
        this.useageNumber = useageNumber;
    }

    public String getUseageNumber() {
        return useageNumber;
    }

    public void setResidueNumber(String residueNumber) {
        this.residueNumber = residueNumber;
    }

    public String getResidueNumber() {
        return residueNumber;
    }

    public void setInventoryMoney(String inventoryMoney) {
        this.inventoryMoney = inventoryMoney;
    }

    public String getInventoryMoney() {
        return inventoryMoney;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("projectId", getProjectId())
                .append("warehouseId", getWarehouseId())
                .append("warehouseRegionId", getWarehouseRegionId())
                .append("materialId", getMaterialId())
                .append("inventoryNumber", getInventoryNumber())
                .append("useageNumber", getUseageNumber())
                .append("residueNumber", getResidueNumber())
                .append("inventoryMoney", getInventoryMoney())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("delFlag", getDelFlag())
                .toString();
    }
}
